This report generates some PEEP-II ratings data visualizations relevant for individual participants.
The cleaned data can be found at data/csv/peep-II-ratings-demog.csv.
ratings_demo <- read_csv('data/csv/peep-II-ratings-demog.csv')
## Parsed with column specification:
## cols(
## .default = col_character(),
## fam_id = col_double(),
## nov_id = col_double(),
## run = col_double(),
## sound_index = col_double(),
## happy_rating = col_double(),
## angry_rating = col_double(),
## sad_rating = col_double(),
## know_speaker = col_double(),
## scared_rating = col_double(),
## child_yrs = col_double()
## )
## See spec(...) for full column specifications.
For the JECP manuscript, we focus on intensity ratings for the target prosody. That is, we compare a child’s angry_rating of recordings intended by the speaker to convey anger, and so forth. We ask:
We are not especially concerned here with differences by script, run, or order although these may occur. Since we did not ask children to rate ‘how un-emotional or neutral’ a recording was, we drop consideration of ratings of neu or non-emotional prosody.
intensity variableCreate a single intensity_rating variable from the {happy, angry, sad}_rating variables and an emotion_rated variable to indicate the emotion the rater was evaluating at the time.
intensity <- ratings_demo %>%
tidyr::gather(., key = "emotion_rated", value = "intensity_rating", `happy_rating`:`sad_rating`) %>%
dplyr::select_all(.) %>%
dplyr::mutate(., emotion_rated = stringr::str_sub(stringr::str_extract(emotion_rated, 'happy|angry|sad'), 1, 3))
str(intensity)
## Classes 'tbl_df', 'tbl' and 'data.frame': 10668 obs. of 26 variables:
## $ fam_id : num 1 1 1 1 1 1 1 1 1 1 ...
## $ nov_id : num 6 6 6 6 6 6 6 6 6 6 ...
## $ run : num 1 1 1 1 1 1 1 1 1 1 ...
## $ order : chr "a" "a" "a" "a" ...
## $ sound_index : num 1 2 3 4 5 6 7 8 9 10 ...
## $ snd_file : chr "wav/006/norm/006-neu-hlp-a.wav" "wav/001/norm/001-hap-tlk-a.wav" "wav/006/norm/006-ang-chk-a.wav" "wav/006/norm/006-sad-tlk-a.wav" ...
## $ how_feel : chr "neu" "neu" "neu" "neu" ...
## $ know_speaker : num 1 2 5 3 4 3 4 4 5 4 ...
## $ scared_rating : num NA NA NA NA NA NA NA NA NA NA ...
## $ speaker : chr "006" "001" "006" "006" ...
## $ prosody : chr "neu" "hap" "ang" "sad" ...
## $ script : chr "hlp" "tlk" "chk" "tlk" ...
## $ speaker_familiarity: chr "nov" "fam" "nov" "nov" ...
## $ two_parent_fam : chr "yes" "yes" "yes" "yes" ...
## $ mother_gender : chr "Female" "Female" "Female" "Female" ...
## $ mother_race : chr "white" "white" "white" "white" ...
## $ mother_latinx : chr "no" "no" "no" "no" ...
## $ other_gender : chr "Male" "Male" "Male" "Male" ...
## $ other_race : chr "White" "White" "White" "White" ...
## $ other_latinx : chr "No" "No" "No" "No" ...
## $ child_gender : chr "Female" "Female" "Female" "Female" ...
## $ child_race : chr "White" "White" "White" "White" ...
## $ child_latinx : chr "No" "No" "No" "No" ...
## $ child_yrs : num 8.85 8.85 8.85 8.85 8.85 ...
## $ emotion_rated : chr "hap" "hap" "hap" "hap" ...
## $ intensity_rating : num 2 4 1 1 1 1 1 1 1 1 ...
Next, we select the intensity ratings for circumstances when the emotion_rated equals the prosody.
intensity <- intensity %>%
filter(., emotion_rated == prosody)
Now we can move on to plotting.
We’ll start with group plots since we’ve done these before.
intensity <- intensity %>%
filter(intensity_rating != 0)
intensity %>%
ggplot(.) +
aes(x = intensity_rating, fill = speaker_familiarity) +
facet_grid(prosody ~ .) +
geom_bar(position = "dodge")
The grouped plot seems to work, so let’s divide this up into panels to see finer-grained results.
intensity <- intensity %>%
filter(intensity_rating != 0)
intensity %>%
ggplot(.) +
aes(x = intensity_rating, fill = speaker_familiarity) +
facet_grid(prosody ~ script) +
geom_bar(position = "dodge")
There are some differences by script and emotion. The checkbook chk script shows flat ratings for happiness hap. The sad prosodies are rated less intensely sad by children, regardless of the script. The familiar fam speaker (mother) is generally rated as more intensely angry and happy across most of the scripts.
To really understand what’s happening, we should look at plots by individuals.
fam_ids <- unique(intensity$fam_id)
There are two different script types, a and b for each script. So, there should be four data points in each of the panels above for each participant. Here’s an attempt to visualize these for a single participant.
intensity %>%
filter(intensity_rating != 0,
fam_id == 1) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
If raters consistently rated the familiar speaker as more intensely emotional, then the slope of these paired lines should be downward to the right. We see the expected pattern in five conditions: hlp + ang, tlk + hap, and to a lesser extent in tlk + ang, chk + hap, and din + sad. Several (4) conditions are a wash: chk + ang, din + ang, din + hap, hlp + hap. Three show the opposite pattern: hlp + sad, tlk + sad, and less so din + sad.
Let’s also plot a ‘summary’ for this participant to see the whole set of ratings.
intensity %>%
filter(intensity_rating != 0,
fam_id == 1) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i = 2
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating, group = order) +
facet_grid(prosody ~ script) +
geom_point(aes(color = speaker_familiarity)) +
geom_line(aes(linetype = order)) +
scale_y_continuous(limits = c(1,4))
intensity %>%
filter(intensity_rating != 0,
fam_id == fam_ids[i]) %>%
ggplot(.) +
aes(x = speaker_familiarity, y = intensity_rating) +
geom_violin() +
geom_point(position = position_jitter(width = 0.1, height = 0.0), aes(color = script)) +
scale_y_continuous(limits = c(1,4))
i <- i + 1